/*
 * Copyright (c) 2019.  鼎捷软件股份有限公司.All rights reserved.
 */

package com.digiwin.dap.middleware.repository;

import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.Predicate;
import javax.persistence.criteria.Root;

/**
 * 自定义查询
 *
 * @param <T>
 */
public interface Specification<T> {
    boolean isSatisfiedBy(T t);

    Predicate toPredicate(Root<T> root, CriteriaBuilder cb);

    Class<T> getType();
}
